package net.zoneland.knowledge.model;

import java.time.LocalDateTime;

/**
 * 性能监控数据.
 * @author bcc
 */
public class PerformanceMonitor {

    /**
     * id.
     */
    private String id;

    /**
     * 请求方式.
     */
    private String method;

    /**
     * 请求url.
     */
    private String requestUri;

    /**
     * 用户uid.
     */
    private String userId;

    /**
     * ip.
     */
    private String ip;

    /**
     * 终端类型.
     */
    private String terminalType;

    /**
     * 耗时
     */
    private long cost;

    /**
     * 请求内容。
     * post json方式
     */
    private String requestBody;

    /**
     * 请求参数.
     * form提交或者url参数
     */
    private String requestParam;

    /**
     * 响应.
     */
    private String response;

    /**
     * 异常信息.
     */
    private String errorInfo;

    /**
     * 创建时间.
     */
    private LocalDateTime createTime;

    /**
     * 获取 id.
     *
     * @return id
     */
    public String getId() {
        return id;
    }

    /**
     * 设置 id.
     *
     * @param id id
     */
    public void setId(final String id) {
        this.id = id;
    }

    /**
     * 获取 requestUri.
     *
     * @return requestUri
     */
    public String getRequestUri() {
        return requestUri;
    }

    /**
     * 设置 requestUri.
     *
     * @param requestUri requestUri
     */
    public void setRequestUri(final String requestUri) {
        this.requestUri = requestUri;
    }

    /**
     * 获取 userId.
     *
     * @return userId
     */
    public String getUserId() {
        return userId;
    }

    /**
     * 设置 userId.
     *
     * @param userId userId
     */
    public void setUserId(final String userId) {
        this.userId = userId;
    }

    /**
     * 获取 ip.
     *
     * @return ip
     */
    public String getIp() {
        return ip;
    }

    /**
     * 设置 ip.
     *
     * @param ip ip
     */
    public void setIp(final String ip) {
        this.ip = ip;
    }

    /**
     * 获取 method.
     *
     * @return method
     */
    public String getMethod() {
        return method;
    }

    /**
     * 设置 method.
     *
     * @param method method
     */
    public void setMethod(final String method) {
        this.method = method;
    }

    /**
     * 获取 createTime.
     *
     * @return createTime
     */
    public LocalDateTime getCreateTime() {
        return createTime;
    }

    /**
     * 设置 createTime.
     *
     * @param createTime createTime
     */
    public void setCreateTime(final LocalDateTime createTime) {
        this.createTime = createTime;
    }

    /**
     * 获取 terminalType.
     *
     * @return terminalType
     */
    public String getTerminalType() {
        return terminalType;
    }

    /**
     * 设置 terminalType.
     *
     * @param terminalType terminalType
     */
    public void setTerminalType(final String terminalType) {
        this.terminalType = terminalType;
    }

    /**
     * 获取 cost.
     *
     * @return cost
     */
    public long getCost() {
        return cost;
    }

    /**
     * 设置 cost.
     *
     * @param cost cost
     */
    public void setCost(final long cost) {
        this.cost = cost;
    }

    /**
     * 获取 requestBody.
     *
     * @return requestBody
     */
    public String getRequestBody() {
        return requestBody;
    }

    /**
     * 设置 requestBody.
     *
     * @param requestBody requestBody
     */
    public void setRequestBody(final String requestBody) {
        this.requestBody = requestBody;
    }

    /**
     * 获取 requestParam.
     *
     * @return requestParam
     */
    public String getRequestParam() {
        return requestParam;
    }

    /**
     * 设置 requestParam.
     *
     * @param requestParam requestParam
     */
    public void setRequestParam(final String requestParam) {
        this.requestParam = requestParam;
    }

    /**
     * 获取 response.
     *
     * @return response
     */
    public String getResponse() {
        return response;
    }

    /**
     * 设置 response.
     *
     * @param response response
     */
    public void setResponse(final String response) {
        this.response = response;
    }

    /**
     * 获取 errorInfo.
     *
     * @return errorInfo
     */
    public String getErrorInfo() {
        return errorInfo;
    }

    /**
     * 设置 errorInfo.
     *
     * @param errorInfo errorInfo
     */
    public void setErrorInfo(final String errorInfo) {
        this.errorInfo = errorInfo;
    }
}
